package ca.seia.comp6521.a1.externalmergesort;

import java.util.ArrayList;
import java.util.List;

public class PhaseIIPassResult {

	private List<String> sortedSubListFiles;
	private int passNumber;
	private boolean isFinalPass;
	private long executionTime;
	
	public long getExecutionTime() {
		return executionTime;
	}

	public void setExecutionTime(long executionTime) {
		this.executionTime = executionTime;
	}

	public PhaseIIPassResult() {
		this.sortedSubListFiles = new ArrayList<>();
		this.isFinalPass = false;
		this.passNumber = 0;
	}
	
	public PhaseIIPassResult(List<String> sortedSubListFiles) {
		this.sortedSubListFiles = sortedSubListFiles;
		this.isFinalPass = false;
		this.passNumber = 0;
	}
	
	public PhaseIIPassResult(List<String> sortedSubListFiles, int passNumber, boolean isFinalPass) {
		this.sortedSubListFiles = sortedSubListFiles;
		this.passNumber = passNumber;
		this.isFinalPass = isFinalPass;
	}

	public List<String> getSortedSubListFiles() {
		return sortedSubListFiles;
	}

	public void setSortedSubListFiles(List<String> sortedSubListFiles) {
		this.sortedSubListFiles = sortedSubListFiles;
	}

	public int getPassNumber() {
		return passNumber;
	}

	public void setPassNumber(int passNumber) {
		this.passNumber = passNumber;
	}

	public boolean isFinalPass() {
		return isFinalPass;
	}

	public void setFinalPass(boolean isFinalPass) {
		this.isFinalPass = isFinalPass;
	}

	@Override
	public String toString() {
		return "PhaseIIPassResult [executionTime=" + executionTime +
				"\npassNumber=" + passNumber + "\nisFinalPass=" + isFinalPass +
				"\nsortedSubListFiles=" + sortedSubListFiles + "]";
	}

}
